package zw_301_400.zw_342_4的幂;

class Solution {

    public static void main(String[] args) {
        int n = -4;
        boolean b = isPowerOfFour(n);
        System.out.println(b);
    }


    /**
     * 方法二：取模性质
     * 时间复杂度：O(1)。
     * 空间复杂度：O(1)。
     *
     * @param n
     * @return
     */
//    public static boolean isPowerOfFour(int n) {
//        return ((n & (n - 1)) == 0 && n % 3 == 1);
//    }


    /**
     * 方法一：二进制表示中 11 的位置
     * 4:100000...;2:10101010...
     * 时间复杂度：O(1)。
     * 空间复杂度：O(1)。
     *
     * @param n
     * @return
     */
    public static boolean isPowerOfFour(int n) {
        return (n & (n - 1)) == 0 && (n & 0xaaaaaaaa) == 0;
    }

}
